LibreNMS + Ollama: Monitorización completa de tu nodo de IA local en Ubuntu 24.04

LibreNMS + Ollama: Monitorización completa de tu nodo de IA local en Ubuntu 24.04

por Raúl Unzué

Integra tu servidor de IA local en LibreNMS

Montar un servidor de IA local puede ser emocionante para todo perfil TIC. Tenerlo corriendo y no saber lo que está haciendo por dentro, no tanto.

El problema de casi todos los setups domésticos de IA es que el servidor existe en un limbo, Ollama responde, los modelos cargan, y el resto es fe ciega. No sabes si la GPU lleva veinte minutos al 95% de temperatura, si Ollama se cayó a las tres de la mañana y lleva horas sin responder, o si el disco donde guardas los modelos está al 90% de capacidad. Te enteras cuando algo ya ha ido mal.

LibreNMS resuelve exactamente eso, y si ya lo tienes corriendo en un Docker, la mitad del trabajo está hecha. Lo que queda es conectar ambos extremos, enseñarle a LibreNMS a hablar con el servidor Ubuntu vía SNMP, exponerle las métricas de la GPU a través de scripts, y configurar un servicio de check HTTP que vigile que el endpoint de Ollama está vivo. El resultado es un dashboard con histórico real, alertas automáticas a Telegram, y visibilidad completa sobre lo que hace tu nodo de IA cada cinco minutos, sin scripts caseros ni cronjobs que nadie mira.

Esta guía asume que tienes el servidor ya configurado y LibreNMS en marcha. No necesitas nada más que acceso SSH al servidor y unos diez minutos.

Instalar y configurar snmpd en Ubuntu

SNMP es el protocolo que usa LibreNMS para consultar el estado del servidor. "snmpd" es el demonio que expone esa información en el servidor Ubuntu. La configuración por defecto es demasiado restrictiva y expone poca información, así que la reemplazamos con una versión optimizada para LibreNMS.

Lanzamos la instalación y realizamos un backup del fichero de configuración original:

sudo apt install -y snmpd snmp libsnmp-dev# Hacer backup de la config original
 sudo cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.bak

Geeknetic LibreNMS + Ollama: Monitorización completa de tu nodo de IA local en Ubuntu 24.04 1

Reemplaza el contenido de "/etc/snmp/snmpd.conf" con esta configuración limpia:

# ── Comunidad SNMP v2c ──────────────────────────────────────
 # Cambia 'librenms' por tu community string realrocommunity librenms 127.0.0.1
 rocommunity librenms IP_SERV_LIBRENMS
 # ── Información del sistema ─────────────────────────────────
 syslocation "Servidor IA Local - Fractal Terra"
 syscontact "librenms@pronectic.geeknetic.es"sysName ailab-fractal
 # ── Escuchar en todas las interfaces ────────────────────────
 agentAddress udp:161,udp6:[::1]:161
 # ── Métricas extendidas ─────────────────────────────────────
 extend-sh nvidia-gpu /etc/snmp/extend/nvidia-gpu.sh
 extend-sh ollama-status /etc/snmp/extend/ollama-status.sh
 # ── Acceso a disco, red, CPU completos ──────────────────────
 view systemview included .1
 access notConfigGroup "" any noauth exact systemview none nonedisk / 10%
 disk /opt 10%# ── Procesos a vigilar ──────────────────────────────────────
 proc ollama 1proc dockerd 1

Geeknetic LibreNMS + Ollama: Monitorización completa de tu nodo de IA local en Ubuntu 24.04 2

Habilitamos una carpeta para los scripts extendidos, y levantamos / validamos el servicio:

# Crear directorio para los scripts extendsudo mkdir -p /etc/snmp/extend
 # Activar y arrancar snmpdsudo systemctl enable --now snmpd
 sudo systemctl status snmpd# Verificar que escucha en el puerto 161
 sudo ss -ulnp | grep 161

Geeknetic LibreNMS + Ollama: Monitorización completa de tu nodo de IA local en Ubuntu 24.04 3

Script Extend: Métricas GPU NVIDIA

Los extend scripts son la forma que tiene LibreNMS de recoger métricas personalizadas vía SNMP. El servidor ejecuta el script localmente y expone el resultado como un OID SNMP que LibreNMS consulta en cada poll. Así integramos la GPU sin necesidad de configuraciones adicionales.

Desde Configuración -> Applications, podemos activar soporte para Docker, NVidia y Systemd, por ejemplo. Una vez habilitadas podréis ver datos en "APPS":

Geeknetic LibreNMS + Ollama: Monitorización completa de tu nodo de IA local en Ubuntu 24.04 4

Adicionalmente, podéis crear scripts extends. Os paso dos ejemplos:

Creamos un fichero "sudo nano /etc/snmp/extend/nvidia-gpu.sh" o directamente con el siguiente comando y este contenido:

elblogdenegu@jarvis:~$ sudo tee /etc/snmp/extend/nvidia-gpu.sh > /dev/null << 'SCRIPT'
 #!/bin/bash
 GPU_TEMP=$(nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader,nounits 2>/dev/null | head -1)
 GPU_UTIL=$(nvidia-smi --query-gpu=utilization.gpu --format=csv,noheader,nounits 2>/dev/null | head -1)
 GPU_MEM_USED=$(nvidia-smi --query-gpu=memory.used --format=csv,noheader,nounits 2>/dev/null | head -1)
 GPU_MEM_TOTAL=$(nvidia-smi --query-gpu=memory.total --format=csv,noheader,nounits 2>/dev/null | head -1)
 GPU_POWER=$(nvidia-smi --query-gpu=power.draw --format=csv,noheader,nounits 2>/dev/null | head -1 | xargs printf "%.0f")
 GPU_FAN=$(nvidia-smi --query-gpu=fan.speed --format=csv,noheader,nounits 2>/dev/null | head -1)
 GPU_NAME=$(nvidia-smi --query-gpu=name --format=csv,noheader 2>/dev/null | head -1)
 echo "gpu_name: ${GPU_NAME}"echo "gpu_temp: ${GPU_TEMP}"
 echo "gpu_util: ${GPU_UTIL}"echo "vram_used_mib: ${GPU_MEM_USED}"
 echo "vram_total_mib: ${GPU_MEM_TOTAL}"echo "power_draw_w: ${GPU_POWER}"
 echo "fan_speed_pct: ${GPU_FAN}"SCRIPT

Geeknetic LibreNMS + Ollama: Monitorización completa de tu nodo de IA local en Ubuntu 24.04 5

Y otro para Ollama "sudo nano /etc/snmp/extend/ollama-status.sh":

elblogdenegu@jarvis:~$ sudo tee /etc/snmp/extend/ollama-status.sh > /dev/null << 'SCRIPT'
 #!/bin/bashOLLAMA_ACTIVE=$(systemctl is-active ollama 2>/dev/null)
 OLLAMA_STATUS=0[ "$OLLAMA_ACTIVE" = "active" ] && OLLAMA_STATUS=1
 MODELS=$(ollama list 2>/dev/null | tail -n +2 | wc -l)API_OK=0
 HTTP_CODE=$(curl -s -o /dev/null -w "%{http_code}" --max-time 3 http://localhost:11434/api/tags)
 [ "$HTTP_CODE" = "200" ] && API_OK=1
 echo "ollama_service: ${OLLAMA_STATUS}"echo "ollama_api: ${API_OK}"
 echo "models_loaded: ${MODELS}"SCRIPT

 

Geeknetic LibreNMS + Ollama: Monitorización completa de tu nodo de IA local en Ubuntu 24.04 6

Les damos permisos de ejecución y los probamos:

sudo chmod +x /etc/snmp/extend/nvidia-gpu.sh
 sudo chmod +x /etc/snmp/extend/ollama-status.sh# Probar los scripts directamente
 sudo /etc/snmp/extend/nvidia-gpu.shsudo /etc/snmp/extend/ollama-status.sh
 # Reiniciar snmpd para cargar los extendssudo systemctl restart snmpd

Geeknetic LibreNMS + Ollama: Monitorización completa de tu nodo de IA local en Ubuntu 24.04 7

Añadir el servidor como dispositivo en LibreNMS

Con snmpd corriendo en el servidor Ubuntu, ya puedes añadirlo desde la interfaz de LibreNMS. Hay dos formas, por la UI web o por CLI dentro del contenedor Docker. La UI es más cómoda para empezar.

En LibreNMS ve a Devices → Add Device y rellena:

Geeknetic LibreNMS + Ollama: Monitorización completa de tu nodo de IA local en Ubuntu 24.04 8

Campo Valor
Hostname / IP IP del servidor Ubuntu en tu red local
SNMP Version v2c
Community librenms (la que pusiste en snmpd.conf)
Port 161
Transport UDP
OS Se detecta automáticamente

Haz clic en Add Device. LibreNMS lanzará un discovery inmediato. En 2-3 minutos el dispositivo aparecerá con interfaces de red, CPU, memoria y disco ya detectados.

Geeknetic LibreNMS + Ollama: Monitorización completa de tu nodo de IA local en Ubuntu 24.04 9

Service check HTTP para el endpoint de Ollama

Además de SNMP, LibreNMS puede hacer service checks estilo Nagios para verificar que un servicio concreto responde. Lo usamos para monitorizar el endpoint HTTP de Ollama de forma independiente al estado del systemd.

En LibreNMS ve al dispositivo que acabas de añadir Services → Add Service:

 

Geeknetic LibreNMS + Ollama: Monitorización completa de tu nodo de IA local en Ubuntu 24.04 10

Rellenamos los datos y pulsamos Add Service:

Campo Valor
Name OLLAMA API
Device SERVIDOR-IA (que hemos introducido)
Check type http
Description Comprueba que el endpoint de Ollama responde
Remote Host IP del servidor IA (Ubuntu Server)
Parameters -p 11434 -u /api/tags -e 200

Geeknetic LibreNMS + Ollama: Monitorización completa de tu nodo de IA local en Ubuntu 24.04 11

Con "-e 200" le estás diciendo que espera un HTTP 200. Si Ollama cae o no responde en el timeout, el service check pasa a estado CRITICAL y LibreNMS dispara las alertas configuradas.

Geeknetic LibreNMS + Ollama: Monitorización completa de tu nodo de IA local en Ubuntu 24.04 12

Monitoriza tu servidor de IA

Con esto ya no estás volando a ciegas. LibreNMS sabe cuánta VRAM está usando la RTX Pro 2000 en cada momento, si Ollama responde o no, y cuándo la temperatura empieza a subir más de la cuenta. El histórico RRD te va a resultar útil más pronto de lo que crees, la primera vez que un modelo se quede cargado en memoria sin que te des cuenta y te preguntes por qué el resto de peticiones van lentas, la gráfica de VRAM te lo va a decir de un vistazo.

Lo interesante de esta integración es que escala sin esfuerzo. Si en algún momento añades un segundo servidor, otro nodo con distinta GPU, o empiezas a correr contenedores con modelos especializados, LibreNMS los absorbe exactamente igual, un dispositivo más, los mismos extend scripts, las mismas reglas de alerta. No tienes que repensar nada.

El siguiente paso lógico es llevar estas métricas un poco más lejos, cruzar el uso de VRAM de LibreNMS con los logs de Ollama para saber qué modelos se cargan más, cuánto tiempo se quedan en memoria, y si merece la pena ajustar OLLAMA_KEEP_ALIVE para tu patrón de uso real.

Todo esto con notificaciones de Telegram, Email...hacen que tu servidor de IA local, sea un punto clave en tu infraestructura.

Fin del Artículo. ¡Cuéntanos algo en los Comentarios!

Redactor del Artículo: Raúl Unzué

Raúl Unzué

Soy un apasionado de la virtualización con más de 20 años de experiencia, especializado en soluciones como VMware(premio vExpert y vExpert Pro desde 2013), Proxmox e Hyper-V. Durante mi carrera, he ayudado a empresas a optimizar sus infraestructuras TI mientras comparto mis conocimientos como redactor IT. Mi objetivo es traducir lo complejo en algo práctico y accesible, combinando teoría con experiencia real. Si te interesa la virtualización, las herramientas TI o simplemente aprender algo nuevo, espero ayudarte con mis artículos.